package tenis;

import exepciones.TenisExepcion;
import tennis.IJugable;
import tennis.IJugador;

public class Partido implements IJugable {

	private Jugador j1;
	private Jugador j2;
	private Score score = new Score();

	/* Seteo los puntos del partido */
	public void setPuntos(int j1, int j2) {
		/* Convierto de 40 puntos a 45 con los que trabaja el sistema */
		if(j1==40){j1+=5;}	
		if(j2==40){j2+=5;}	
		/* Paso los puntos convertidos a score */
		score.setPuntos(j1, j2);
	}

	/* Seteo los games del patido */
	public void setGames(int j1, int j2) {
		score.setGames(j1, j2);

	}

	/* Seteo los sets del partido */
	public void setSets(int j1, int j2) {
		score.setSets(j1, j2);

	}
	
	/* Iniciamos el partido y ponemos a 0 los puntos */
	@Override
	public void iniciarPartido(IJugador jugador1, IJugador jugador2)
			throws TenisExepcion {
		this.j1 = (Jugador) jugador1; 
		this.j2 = (Jugador) jugador2;
		cantidadSets();
		score.resetScore();
		
	}

	
	private void cantidadSets(){
		if(j1.getSexo()=="M")
			score.setCantidadSets(3);
		else
			score.setCantidadSets(2);
	}
	public void setNombres(String j1, String j2){
		this.j1.setNombre(j1);
		this.j2.setNombre(j2);
	}
	
	
	/* Obtenemos el resultado parcial o final del partdio */
	public String resultado() {
		String resultado=score.resultado();
		return resultado;
	}

	

	/* Si un jugador hace un punto */
	public void sumarPunto(IJugador j) {
		
		Jugador jpunto = (Jugador) j;
		
		boolean esJugador1=false;
		if(j1.getNombre() == jpunto.getNombre()){
			esJugador1=true;
			score.ganarPunto(esJugador1); //Si hice el punto el jugador 1 mando true
		}
			
		
		else if(j2.getNombre()==jpunto.getNombre()){
			esJugador1=false;
			score.ganarPunto(esJugador1); //Si hice el punto el jugador 2 mando false
		}
			
	}//void sumarPunto()


}
